unit header;

interface

uses Graphics;

const
  BASS_CTYPE_STREAM_MPC         = $10a00;
  BASS_CTYPE_STREAM_FLAC        = $10900;
  BASS_CTYPE_STREAM_FLAC_OGG    = $10901;
  BASS_CTYPE_STREAM_WMA         = $10300;
  BASS_CTYPE_STREAM_WMA_MP3     = $10301;
  BASS_CTYPE_STREAM_AAC         = $10b00;
  BASS_CTYPE_STREAM_MP4         = $10b01;
  BASS_CTYPE_STREAM_ALAC        = $10e00;

  BASS_TAG_MP4    = 7;
  BASS_AAC_STEREO = $400000;

  DEFAULT_FONT   = 'DejaVu Sans Condensed';
  DEFAULT_FONT_2 = 'DejaVu Sans';

type
  TPlayType = (ptplay, ptnext, ptprevious, ptpause, ptstop, ptfirst);

  TSkin = record
    listbgcolor1: TColor;
    listbgcolor2: TColor;
    listactivecolor: TColor;
    listfontcolor: TColor;
    listselfontcolor: TColor;
    listselbgcolor: TColor;
    UseDefaultFont: Boolean;
    FontName: TFontName;
  end;
  
  TState = record
    volume, BeforeMute: byte;
    loop,
    repeats,
    istop,
    autonext,
    playonload,
    playonadd,
    Bass_float: Boolean;
    OpenDir,
    SaveDir,
    ListDir,
    SaveListDir,
    CurrentDir: string;
    LastActive: Word;
    FSize,
    bitrate: Cardinal;
    Skin: TSkin;
  end;

  // Export structure
  TExp_struct_item = record
    fn: WideString; //File name
    tn: WideString; //Formated track name
    tm: Integer;    //Track time in s
  end;

  TExp_struct = array of TExp_struct_item;

  TTrack = record
    artist,
    track,
    album,
    listentry: WideString;
    seconds: integer;
    filename: WideString;
    fexists: Boolean;
    updated: Boolean;
  end;

  TTag = record
    Title, Artist, Album: WideString;
  end;

  TTrackList = array of TTrack;

  //Array of saved play lists
  TSavedLists = array of record
    FileName: WideString;
    MenuTag: Word;
  end;

implementation

end.
